#ifndef FAULT_IIT_HPP
#define FAULT_IIT_HPP

#include "fault.hpp"

namespace motion
{
	class fault_iit:public fault
	{
		protected:
			uint64_t mHeatAccumulationCount;                                     ///热累计计算
			uint64_t mReserver2;                                                 ///当前电流
			virtual bool CompareValue(bool isResume);
			virtual void mTicked(void);
		public:
			uint64_t HeatAccumulation;												///<热累积(动作时间 t = HeatAccumulation / (ResourceValue ^ 2 * 100))
			uint64_t Thermolysis;															///<散热值(恢复时间 t = (HeatAccumulation / Thermolysis * 1000))
			fault_iit(void);
			virtual ~fault_iit(void);
			virtual void Reset();
	};
}

#endif
